<?php
	session_start();
	session_name('exercicio_array_especial');
	
	if($_GET)
	{
		if(isset($_GET['pagina'])){
			if(is_numeric($_GET['pagina'])){
				if($_GET['pagina'] <= 0){
					$_SESSION['msg_erro'] = "Não foi passado um valor numérico válido para a página"; 
					header('Location: exercicio_array_especial1.php?pagina=1');
					exit;
				}
				$pagina = $_GET['pagina']; // A variável vale a página e no futuro o id do usuário no BD				
			}
			else{
				$_SESSION['msg_erro'] = "Não foi passado um valor numérico válido para a página";
				header('Location: exercicio_array_especial1.php?pagina=1');
				exit;
			}
		}
		else{
			$_SESSION['msg_erro'] = "Não foi passado um valor de página"; 
			header('Location: exercicio_array_especial1.php?pagina=1');
			exit;
		}
	}
	else{
		header('Location: exercicio_array_especial1.php?pagina=1');
		exit;
	}
	
	if($_POST)
	{
		if(isset($_POST['salvar'])){
			if(trim($_POST['nome']) == "")
				$erros['nome'] = "Esse campo não pode estar vazio";
			if(trim($_POST['login']) == "")
				$erros['login'] = "Esse campo não pode estar vazio";
			if($_POST['senha'] == "")
				$erros['senha'] = "Esse campo não pode estar vazio";
			if(!(ereg('^([a-zA-Z])([a-zA-Z0-9_\.-]+)(@)([a-zA-Z0-9_\-]+)(\.[a-zA-Z0-9.]+)$', $_POST['email'])))
				$erros['email'] = "Email inválido";
			if(trim($_POST['email']) == "")
				$erros['email'] = "Esse campo não pode estar vazio";
			
			if(empty($erros)){
				extract($_POST);
				$_SESSION['usuarios'][$pagina] = array(
					"nome" => $nome,
					"login" => $login,
					"senha" => md5($senha),
					"email" => $email
				);
			}
		}
		else if(isset($_POST['salvarTudo'])){
			require_once('../conexao.php');
			foreach($_SESSION['usuarios'] as $pagina => $usuario){
				extract($usuario);
				$sql = "SELECT * FROM usuario WHERE id=$pagina";
				$result = mysql_query($sql);
				if(mysql_num_rows($result) == 0){ // Se não achou significa que é para inserir
					$sql = "INSERT INTO usuario VALUES($pagina, '$nome', '$login', '$senha', '$email');";
					$result = mysql_query($sql);
					if(!$result){
						$_SESSION['msg_erro'] = "Erro ao inserir os valores do usuário $pagina"; 
						header('Location: exercicio_array_especial1.php?pagina=1');
						exit;
					}
				}
				else{ // Se achou significa que é para alterar o já existente
					$sql = "UPDATE usuario SET nome = '$nome', login = '$login', senha = '$senha', email = '$email' WHERE id = $pagina;";
					$result = mysql_query($sql);
					if(!$result){
						$_SESSION['msg_erro'] = "Erro ao alterar os valores do usuário $pagina"; 
						header('Location: exercicio_array_especial1.php?pagina=1');
						exit;
					}
				}
			}
			$_SESSION['msg_sucesso'] = "Usuários inseridos com sucesso"; 
			header('Location: exercicio_array_especial1.php?pagina=1');
			exit;
		}
	}
	
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt-br">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
		
		<meta http-equiv="content-language" content="pt-br" />
		<meta name="author" content="ejcm" />
		<meta name="keywords" content="ejcm" />
		
		<title>Exercício de formulários</title>
		
		<script type="text/javascript">
			<!--
				function para_pagina()
				{
					var pagina_para_ir = document.getElementById("pagina_para_ir").value;
					window.location = "exercicio_array_especial1.php?pagina=" + pagina_para_ir;
					return true;
				}
			//-->
		</script>
	</head>
	<body>
		<span style="color: red;">
		<?php 
			if($_SESSION['msg_erro']){
				echo $_SESSION['msg_erro']; // Escrevo a mensagem
				unset($_SESSION['msg_erro']); // Retiro a mensagem para não ficar escrevendo toda hora
			}
		?>
		</span><br />
		<span style="color: green;">
		<?php 
			if($_SESSION['msg_sucesso']){
				echo $_SESSION['msg_sucesso']; // Escrevo a mensagem
				unset($_SESSION['msg_sucesso']); // Retiro a mensagem para não ficar escrevendo toda hora
			}
		?>
		</span><br />
		<form method="post" action="">
			<fieldset>
				<legend>Informações Do Usuário</legend>
				
				<label for="nome">Nome:</label>
				<input type="text" id="nome" name="nome" 
				value="<?php
					if(isset($_POST['nome'])){
						$nome = $_POST['nome'];
					}
					else if(isset($_SESSION['usuarios'][$pagina])){
						$nome = $_SESSION['usuarios'][$pagina]['nome'];
					}
					echo $nome;
				?>" />
				<span style="color: red;"><?php echo $erros['nome'];?></span><br />
				<br />
				
				<label for="login">Login:</label>
				<input type="text" id="login" name="login" 
				value="<?php
					if(isset($_POST['login'])){
						$login = $_POST['login'];
					}
					else if(isset($_SESSION['usuarios'][$pagina])){
						$login = $_SESSION['usuarios'][$pagina]['login'];
					}
					echo $login;
				?>" />
				<span style="color: red;"><?php echo $erros['login'];?></span><br />
				<br />
				
				<label for="senha">Senha:</label>
				<input type="password" id="senha" name="senha" />
				<span style="color: red;"><?php echo $erros['senha'];?></span><br />
				<br />
				
				<label for="email">Email:</label>
				<input type="text" id="email" name="email" 
				value="<?php
					if(isset($_POST['email'])){
						$email = $_POST['email'];
					}
					else if(isset($_SESSION['usuarios'][$pagina])){
						$email = $_SESSION['usuarios'][$pagina]['email'];
					}
					echo $email;
				?>" />
				<span style="color: red;"><?php echo $erros['email'];?></span><br />
				<br />
				
				<input type="submit" id="salvar" name="salvar" value="Salvar" /> &nbsp;
				<input type="submit" id="salvarTudo" name="salvarTudo" value="Salvar Tudo" />
				
				<br />
				<label for="pagina_para_ir">Página:</label>
				<input type="text" id="pagina_para_ir"  style="width: 50px;" value="<?php echo $pagina;?>" />
				<input type="button" id="ir_para_pagina" onclick="javascript: return para_pagina();" value="ir" />
				<br />
				
				<a id="pagina_anterior" href="exercicio_array_especial1.php?pagina=<?php echo $pagina-1?>">Página anterior</a> &nbsp;
				<a id="proxima_pagina" href="exercicio_array_especial1.php?pagina=<?php echo $pagina+1?>">Próxima Página</a>
				
			</fieldset>
		</form>
	</body>
</html>